// pages/mine/company/edit/chooseAddress.js

const app = getApp();
// 引入腾讯地图SDK核心类
const QQMapWX = require('../../../../utils/qqmap-wx-jssdk.min.js');
const areaList = require('../../../../utils/area');
var qqmapsdk;

Page({

  /**
   * 页面的初始数据
   */
  data: {
    theme: app.cSwitch(), //主题色
    // 模糊查询
    input: '',
    ssq: '河南省洛阳市',
    ssqArr: ['河南省', '洛阳市', ''],
    list: null
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    console.log(options)
    this.setData({
      areaList: areaList.default
    })
    if (options.name) {
      this.setData({
        input: options.name,
      })
      let ssqArr = [options.province ? options.province : '', options.city ? options.city : '', options.district ? options.district : ''];
      let ssq = (options.province ? options.province : '') + (options.city ? options.city : '') + (options.district ? options.district : '');
      this.setData({
        ssqArr,
        ssq
      })
    }

    // console.log(app.getLocation());
    // app.getLocation().then(r => {
    //   this.setData({
    //     latlng: [r.latitude, r.longitude]
    //   })
    // })
    // this.searInput();
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
    let that = this;
    // 实例化腾讯地图API核心类
    qqmapsdk = new QQMapWX({
      key: app.config.key
    });
    this.searInput();
  },

  inputchange(e) {
    // if (e && e.detail.value) {
    //   this.setData({
    //     input: e.detail.value,
    //     list: null
    //   })
    this.searInput();
    // }
  },

  // 输入查询地址模糊查询
  async searInput() {
    let that = this;
    if (that.data.input || that.data.ssq) {
      // 根据根据经纬度获取省市区并获取省市区id
      // https://fuwu.weixin.qq.com/detail/00002c301c0ac83ddc996d8ca56015
      // try {
      //   let orderby = "_distance";
      //   // if (that.data.latlng) {
      //   //   orderby = 'nearby(' + that.data.latlng[0] + ',' + that.data.latlng[1] + ',1000)';
      //   // }
      //   const invokeRes = await wx.serviceMarket.invokeService({
      //     service: 'wxc1c68623b7bdea7b',
      //     api: 'poiSearch',
      //     data: {
      //       keyword: that.data.ssq + that.data.input,
      //       boundary: 'region(洛阳市,1)',
      //       orderby: orderby,
      //       page_size: 30
      //     },
      //   });
      //   var searchList = invokeRes.data.data;
      //   // var userPoi = that.data.userPoi;
      //   // searchList.map(r => {
      //   //   var addPoi = r.location;
      //   //   r._distance = Math.ceil(app.util.getDistance(addPoi.lat, addPoi.lng, userPoi.latitude, userPoi.longitude) * 10) / 10
      //   //   return r;
      //   // })
      //   // 去除搜索位置排序
      //   // searchList.sort(function(a,b){
      //   //   return a._distance - b._distance
      //   // })
      //   if (searchList.length > 0) {
      //     that.setData({
      //       list: searchList
      //     })
      //   } else {
      //     that.setData({
      //       nofind: that.data.ssq + that.data.input
      //     })
      //   }
      // } catch (err) {
      //   console.error('invokeService fail', err)
      //   wx.showModal({
      //     title: 'fail',
      //     content: err,
      //   })
      // }

      qqmapsdk.getSuggestion({
        keyword: that.data.ssq + that.data.input,
        region: '洛阳市',
        region_fix: 0,
        page_size: 20,
        page_index: 1,
        success: function (res) {
          console.log(res,'11111111111111');
          if (res.data.length > 0) {
            that.setData({
              list: res.data
            })
          } else {
            that.setData({
              nofind: that.data.ssq + that.data.input
            })
          }
        },
        fail: function (res) {
          console.log(res);
          // wx.showToast({
          //   title: '地址信息获取失败',
          // })
        }
      });

    } else {
      wx.showToast({
        title: '请输入地址或者选择省市区',
        icon: 'none'
      })
    }
  },

  // 点击地址列表
  chooseAList: function (e) {
    console.log(e.currentTarget.dataset);
    let that = this;
    var pages = getCurrentPages(); // 获取页面栈
    var currPage = pages[pages.length - 1]; // 当前页面
    var prevPage = pages[pages.length - 2]; // 上一个页面
    prevPage.setData({
      address: {
        name: e.currentTarget.dataset.title,
        lat: e.currentTarget.dataset.location.lat,
        lng: e.currentTarget.dataset.location.lng,
      },
      // adinfo: e.currentTarget.dataset.adinfo
      adinfo: that.data.list[e.currentTarget.dataset.index]
    })
    wx.navigateBack({
      delta: 1
    })
  },

  open() {
    this.setData({
      selectShow: true
    })
  },
  onClose() {
    this.setData({
      selectShow: false
    })
  },
  confirm(e) {
    console.log(e.detail.values)
    let v = e.detail.values;
    this.setData({
      ssq: (v[0] ? v[0].name : '') + (v[1] ? v[1].name : '') + (v[2] ? v[2].name : ''),
      ssqArr: [v[0] ? v[0].name : '', v[1] ? v[1].name : '', v[2] ? v[2].name : ''],
      selectShow: false
    })

    this.searInput();
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    this.setData({
      theme: app.cSwitch(), //主题色
      patterns: app.globalData.patterns, //是否为游客模式
    })
    wx.setNavigationBarColor({
      frontColor: '#ffffff',
      backgroundColor: this.data.theme.tabbarColor,
    })
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    return app.share();
  }
})